package cn.csc.module.member.controller.admin.user.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * 店铺详情 Excel VO
 *
 * @author liuchuang
 */
@Data
public class MemberUserExcelVO {

    @ExcelProperty(value = "用户编号")
    private String id;

    @ExcelProperty(value = "用户昵称")
    private String nickname;

    @ExcelProperty(value = "证件类型：1 身份证，2 军官证，3 护照")
    private Byte idCardType;

    @ExcelProperty(value = "证件号")
    private String idCardNo;

    @ExcelProperty(value = "真实姓名")
    @NotNull(message = "真实姓名不能为空")
    private String name;

    @ExcelProperty(value = "状态")
    @NotNull(message = "状态不能为空")
    private Byte status;

    @ExcelProperty(value = "性别")
    @NotNull(message = "性别不能为空")
    private Byte gender;

    @ExcelProperty(value = "出生日期")
    private Date birthday;

    @ExcelProperty(value = "所在地")
    private Integer areaId;

    @ExcelProperty(value = "所在地全称")
    private String areaName;

    @ExcelProperty(value = "用户备注")
    private String mark;

    @ExcelProperty(value = "积分")
    @NotNull(message = "积分不能为空")
    private Integer score;

    @ExcelProperty(value = "头像")
    @NotNull(message = "头像不能为空")
    private String avatar;

    @ExcelProperty(value = "手机号")
    @NotNull(message = "手机号不能为空")
    private String mobile;

    @ExcelProperty(value = "邮箱")
    private String email;

    @ExcelProperty(value = "密码")
    @NotNull(message = "密码不能为空")
    private String password;

    @ExcelProperty(value = "注册类型, 10码云, 20钉钉, 30企业微信, 31微信公众号, 32微信开放平台, 34微信小程序")
    private String registerType;

    /**
     * 用户类型(0普通，5采购商)
     */
    @ExcelProperty(value = "用户类型(0普通，5采购商)")
    private Integer type;

    @ExcelProperty(value = "openid")
    private String openId;

    @ExcelProperty(value = "unionid")
    private String unionId;

    @ExcelProperty(value = "token")
    private String token;

    @ExcelProperty(value = "最后登录IP")
    private String loginIp;

    @ExcelProperty(value = "最后登录时间")
    private LocalDateTime loginDate;

    @ExcelProperty(value = "创建时间")
    private LocalDateTime createTime;

}
